package cn.com.dhcc.turbo.entity.exch;

import java.io.Serializable;
import java.util.Date;

import cn.com.dhcc.app.core.annotation.SiColumn;
import cn.com.dhcc.app.core.annotation.SiColumn.TYPE;
import cn.com.dhcc.app.core.annotation.SiTable;
import cn.com.dhcc.app.core.base.ModuleFeatureBean;

import com.thoughtworks.xstream.annotations.XStreamAlias;

/**
 * 常规数据交换实体
 */
@SiTable(name = "turbo_recv_file_data")
@XStreamAlias("recvFileData")
public class RecvFileData extends ModuleFeatureBean implements FileData,Serializable {
	 /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@SiColumn(name = "order_id",isId=true)
	    private String orderId;//单号
	    @SiColumn(name = "group_id")
	    private String groupId;//主单号，处理一点多发的情况
	    
		@SiColumn(name = "send_nodecode")
		private String sendNodecode;//发送节点编码
		
		@SiColumn(name = "send_busicode")
		private String sendBusicode;//发送业务编码
		@SiColumn(name = "SEND_ADAPTORCODE")
		private String sendAdaptorcode;//发送适配器
		@SiColumn(name = "recv_nodecode")
		private String recvNodecode;//接收节点编码
		
		@SiColumn(name = "RECV_ADAPTORCODE")
		private String recvAdaptorcode;//接收适配器
	    @SiColumn(name="posthead",type=TYPE.CLOB)
		private String posthead;//头信息
		private String payload;//报文体存储的路径，文件名字为主键值
		
		private String resp;//交换平台给业务系统的回执信息
	    @SiColumn(name = "RECIVER_SIGNED")
	    private String reciverSigned;//业务系统签收
	    @SiColumn(name = "SENDER_SIGNED")
	    private String senderSigned;//发送者签收
	    @SiColumn(name = "SEND_STATUS")
	    private String sendStatus; //发送状态，参考Const.sendStatus
	    @SiColumn(name = "NOTIFY_STATUS")
	    private String notifyStatus; //通知状态，参考Const.notifyStatus
		private String routelog;//详细的路由日志
		private String ip;//客户端访问的IP
		private String priority;//消息优先级 参考Const.Priority
		private String pipeline;//消息传输管道详见，参考Const.Pipeline
		@SiColumn(name = "CROSS_NODE")
		private String crossNode; //是否跨节点传输   0：否   1：是  
		@SiColumn(name = "CROSS_NET")
		private String crossNet; //是否跨网传输   0：同网段传输    1：内网到外网  2 外网到内网
		
		
		private Date created;//创建时期
		private Date modified;//最后修改日期
		@SiColumn(type=TYPE.CLOB)
	    private String filepaths;//附件上传的存储路径
	    private String filehome;//附件文件存储路径
	    private Long filesize;//附件大小
	    
	    @SiColumn(type=TYPE.CLOB)
	    private String storepaths;//附件在平台存储路径
	    @SiColumn(name = "OUT_GAP_NODE_CODE")
		private String outGapNodeCode;//网闸节点编码（涉及跨网交换的需要记录中转的网闸是哪个节点）
		@SiColumn(name = "INNER_GAP_NODE_CODE")
		private String innerGapNodeCode;//网闸节点编码（涉及跨网交换的需要记录中转的网闸是哪个节点）
		@SiColumn(name = "NOTIFY_SENDER")
		private String notifySender;//是否需要通知接收方   0：否   1：是
		private String trig; //定时发送触发器，填写定时发送的日期，日期格式yyyy-MM-dd HH:mm:ss 选填项
	    private String deleted;//是否已经删除//0:否  1:是
	    @SiColumn(name = "THROUGH_GAP")
		private String throughGap;//是否走网闸 0不走网闸，1走网闸
		@SiColumn(name = "AUDIT_PERSON")
		private String auditPerson;//审核人
		@SiColumn(name="meta_data",type=TYPE.CLOB)
		private String metaData;//消息说明
		
		@SiColumn(name="file_items",type=TYPE.CLOB)
		private String fileItems;//文件的对象信息
		
		
		public String getFileItems() {
			return fileItems;
		}
		public void setFileItems(String fileItems) {
			this.fileItems = fileItems;
		}
		
		public String getMetaData() {
			return metaData;
		}
		public void setMetaData(String metaData) {
			this.metaData = metaData;
		}
	    public String getOrderId() {
	        return orderId;
	    }
	    public String getSendAdaptorcode() {
			return sendAdaptorcode;
		}
		public void setSendAdaptorcode(String sendAdaptorcode) {
			this.sendAdaptorcode = sendAdaptorcode;
		}
		public String getRecvAdaptorcode() {
			return recvAdaptorcode;
		}
		public void setRecvAdaptorcode(String recvAdaptorcode) {
			this.recvAdaptorcode = recvAdaptorcode;
		}
	    public void setOrderId(String orderId) {
	        this.orderId = orderId;
	    }

	    public String getGroupId() {
	        return groupId;
	    }

	    public void setGroupId(String groupId) {
	        this.groupId = groupId;
	    }

	    public String getSendNodecode() {
	        return sendNodecode;
	    }

	    public void setSendNodecode(String sendNodecode) {
	        this.sendNodecode = sendNodecode;
	    }

	 
	    public String getSendBusicode() {
	        return sendBusicode;
	    }

	    public void setSendBusicode(String sendBusicode) {
	        this.sendBusicode = sendBusicode;
	    }

	    public String getRecvNodecode() {
	        return recvNodecode;
	    }

	    public void setRecvNodecode(String recvNodecode) {
	        this.recvNodecode = recvNodecode;
	    }

	   

	    public String getPosthead() {
	        return posthead;
	    }

	    public void setPosthead(String posthead) {
	        this.posthead = posthead;
	    }

	    public String getPayload() {
	        return payload;
	    }

	    public void setPayload(String payload) {
	        this.payload = payload;
	    }

	    public String getResp() {
	        return resp;
	    }

	    public void setResp(String resp) {
	        this.resp = resp;
	    }

	    public String getReciverSigned() {
	        return reciverSigned;
	    }

	    public void setReciverSigned(String reciverSigned) {
	        this.reciverSigned = reciverSigned;
	    }

	    public String getSenderSigned() {
	        return senderSigned;
	    }

	    public void setSenderSigned(String senderSigned) {
	        this.senderSigned = senderSigned;
	    }

	    public String getSendStatus() {
	        return sendStatus;
	    }

	    public void setSendStatus(String sendStatus) {
	        this.sendStatus = sendStatus;
	    }

	    public String getNotifyStatus() {
	        return notifyStatus;
	    }

	    public void setNotifyStatus(String notifyStatus) {
	        this.notifyStatus = notifyStatus;
	    }

	    public String getRoutelog() {
	        return routelog;
	    }

	    public void setRoutelog(String routelog) {
	        this.routelog = routelog;
	    }

	    public String getIp() {
	        return ip;
	    }

	    public void setIp(String ip) {
	        this.ip = ip;
	    }

	    public String getPriority() {
	        return priority;
	    }

	    public void setPriority(String priority) {
	        this.priority = priority;
	    }

	    public String getPipeline() {
	        return pipeline;
	    }

	    public void setPipeline(String pipeline) {
	        this.pipeline = pipeline;
	    }

	    public String getCrossNet() {
	        return crossNet;
	    }

	    public void setCrossNet(String crossNet) {
	        this.crossNet = crossNet;
	    }

	    public Date getCreated() {
	        return created;
	    }

	    public void setCreated(Date created) {
	        this.created = created;
	    }

	    public Date getModified() {
	        return modified;
	    }

	    public void setModified(Date modified) {
	        this.modified = modified;
	    }

	    public String getCrossNode() {
			return crossNode;
		}

		public void setCrossNode(String crossNode) {
			this.crossNode = crossNode;
		}

		public String getOutGapNodeCode() {
			return outGapNodeCode;
		}

		public void setOutGapNodeCode(String outGapNodeCode) {
			this.outGapNodeCode = outGapNodeCode;
		}

		public String getInnerGapNodeCode() {
			return innerGapNodeCode;
		}

		public void setInnerGapNodeCode(String innerGapNodeCode) {
			this.innerGapNodeCode = innerGapNodeCode;
		}

		public String getNotifySender() {
			return notifySender;
		}

		public void setNotifySender(String notifySender) {
			this.notifySender = notifySender;
		}

		public String getTrig() {
			return trig;
		}

		public void setTrig(String trig) {
			this.trig = trig;
		}

		public String getThroughGap() {
			return throughGap;
		}

		public void setThroughGap(String throughGap) {
			this.throughGap = throughGap;
		}

		public String getAuditPerson() {
			return auditPerson;
		}

		public void setAuditPerson(String auditPerson) {
			this.auditPerson = auditPerson;
		}

		public String getFilepaths() {
	        return filepaths;
	    }

	    public void setFilepaths(String filepaths) {
	        this.filepaths = filepaths;
	    }

	    public String getFilehome() {
	        return filehome;
	    }

	    public void setFilehome(String filehome) {
	        this.filehome = filehome;
	    }

	    public Long getFilesize() {
	        return filesize;
	    }

	    public void setFilesize(Long filesize) {
	        this.filesize = filesize;
	    }

	    public String getStorepaths() {
	        return storepaths;
	    }

	    public void setStorepaths(String storepaths) {
	        this.storepaths = storepaths;
	    }


	    public String getDeleted() {
	        return deleted;
	    }

	    public void setDeleted(String deleted) {
	        this.deleted = deleted;
	    }
		@Override
		public String toString() {
			return "CrossNetTmpFileData [orderId=" + orderId + ", groupId="
					+ groupId + ", sendNodecode=" + sendNodecode
					+ ", sendBusicode=" + sendBusicode + ", sendAdaptorcode="
					+ sendAdaptorcode + ", recvNodecode=" + recvNodecode
					+ ", recvAdaptorcode=" + recvAdaptorcode + ", posthead="
					+ posthead + ", payload=" + payload + ", resp=" + resp
					+ ", reciverSigned=" + reciverSigned + ", senderSigned="
					+ senderSigned + ", sendStatus=" + sendStatus
					+ ", notifyStatus=" + notifyStatus + ", routelog="
					+ routelog + ", ip=" + ip + ", priority=" + priority
					+ ", pipeline=" + pipeline + ", crossNode=" + crossNode
					+ ", crossNet=" + crossNet + ", created=" + created
					+ ", modified=" + modified + ", filepaths=" + filepaths
					+ ", filehome=" + filehome + ", filesize=" + filesize
					+ ", storepaths=" + storepaths + ", outGapNodeCode="
					+ outGapNodeCode + ", innerGapNodeCode=" + innerGapNodeCode
					+ ", notifySender=" + notifySender + ", trig=" + trig
					+ ", deleted=" + deleted + ", throughGap=" + throughGap
					+ ", auditPerson=" + auditPerson + ", metaData=" + metaData
					+ ", fileItems=" + fileItems + "]";
		}

}
